package com.ms.service.module.analysisgroup.db.model;

import java.util.Calendar;
import java.util.Date;

import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;

import com.xpec.c4.db.model.basic.BasicModel;
import com.xpec.c4.db.util.LogDBUtils;

/**
 * 物品變化統計
 */
@Entity
@org.hibernate.annotations.Entity(dynamicInsert = true, dynamicUpdate = true)
@Table(name = ItemChangeCountModel.ModelName)
public class ItemChangeCountModel extends BasicModel{
	
	/**
	 * 
	 */
	private static final long serialVersionUID = -7629171318185942336L;

	public static final String ModelName = "item_count_log";
	
	private long eventID;
	
	/**紀錄時間*/
	private Date recordTime;
	
	//=====物品簡易資訊=====
	/**物品ID*/
	private String itemID;
	
	/**物品名稱*/
	private String itemName;
	
	/**物品精煉等級*/
	private int refineLevel;
	
	/**水晶價值(水晶卡用)*/
	private int crystalCount;
	
	/**C幣價值(C幣卡用)*/
	private int goldCoin;
	//=====物品簡易資訊=====
	
	
	//=======統計資訊=======
	/**
	 * 物品變化方式，直接參考這個列舉，轉成string存入<br>
	 * com.ms.game.itembox.ItemChangeWay
	 */
	private String itemChangeWay;
	
	/**物品計算方式*/
	private String itemCountWay;
	
	/**數量*/
	private int count;
	//=======統計資訊=======


	public ItemChangeCountModel(){
		this.eventID = LogDBUtils.getRandomLong();
		this.recordTime = Calendar.getInstance().getTime();
	}
	
	@Id
	public long getEventID() {
		return eventID;
	}

	public void setEventID(long eventID) {
		this.eventID = eventID;
	}

	public Date getRecordTime() {
		return recordTime;
	}

	public void setRecordTime(Date recordTime) {
		this.recordTime = recordTime;
	}

	public String getItemID() {
		return itemID;
	}

	public void setItemID(String itemID) {
		this.itemID = itemID;
	}

	public String getItemName() {
		return itemName;
	}

	public void setItemName(String itemName) {
		this.itemName = itemName;
	}

	public int getCrystalCount() {
		return crystalCount;
	}

	public void setCrystalCount(int crystalCount) {
		this.crystalCount = crystalCount;
	}

	public int getGoldCoin() {
		return goldCoin;
	}

	public void setGoldCoin(int goldCoin) {
		this.goldCoin = goldCoin;
	}

	public String getItemChangeWay() {
		return itemChangeWay;
	}

	public void setItemChangeWay(String itemChangeWay) {
		this.itemChangeWay = itemChangeWay;
	}

	public String getItemCountWay() {
		return itemCountWay;
	}

	public void setItemCountWay(String itemCountWay) {
		this.itemCountWay = itemCountWay;
	}

	public int getCount() {
		return count;
	}

	public void setCount(int count) {
		this.count = count;
	}

	public int getRefineLevel() {
		return refineLevel;
	}

	public void setRefineLevel(int refineLevel) {
		this.refineLevel = refineLevel;
	}

}
